FrameLib  0.1
Arbitrarily timed and sized frame-based DSP
FrameLib_ConnectionQueue.h
Go to the documentation of this file.
1 
2 
3 #ifndef FRAMELIB_CONNECTIONQUEUE_H
4 #define FRAMELIB_CONNECTIONQUEUE_H
5 
7 {
8 
9 public:
10 
11  class Item
12  {
14 
15  public:
16 
17  Item() : mNext(NULL) {}
18  virtual ~Item() {}
19 
20  private:
21 
22  // Override to deal with changes in IO (inputUpdate() returns true is output size has changed)
23 
24  virtual bool inputUpdate() = 0;
25  virtual void outputUpdate() = 0;
26 
27  Item *mNext;
28  };
29 
30  FrameLib_ConnectionQueue() : mTop(NULL), mTail(NULL) {}
31 
32  void add(Item *object);
33 
34 private:
35 
36  // Deleted
37 
40 
41  Item *mTop;
42  Item *mTail;
43 };
44 
45 #endif /* FRAMELIB_CONNECTIONQUEUE_H */
Definition: FrameLib_ConnectionQueue.h:6
Item()
Definition: FrameLib_ConnectionQueue.h:17
void add(Item *object)
Definition: FrameLib_ConnectionQueue.cpp:5
Definition: FrameLib_ConnectionQueue.h:11
friend class FrameLib_ConnectionQueue
Definition: FrameLib_ConnectionQueue.h:13
virtual ~Item()
Definition: FrameLib_ConnectionQueue.h:18
FrameLib_ConnectionQueue()
Definition: FrameLib_ConnectionQueue.h:30